-
-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add eTRV Monitoring, Maintenance Dropdown, and Boiler Automation Support #98
base: develop
Are you sure you want to change the base?
Conversation
Develop v0.7.2 release
Add dropdown to climate control dashboard card for most used maintainance operations for eTRV
Also added Add dropdown to climate control dashboard card for most used maintainance operations for eTRV |
Human error, added back in
@@ -325,7 +325,7 @@ Both MiHome heating devices are now supported (as of v0.7.x). Specifically the | |||
These devices are battery operated, so energenie in order to save power, have implemented periods of sleep where the devices do not listen for commands. This can lead to a delay from when a command is sent to it being processed by the device. See **Command Caching** below. | |||
|
|||
### Command Caching | |||
Battery powered energenie devices, such as the eTRV or Thermostat do not constantly listen for commands. For example, the eTRV reports its temperature at the *SET_REPORTING_INTERVAL* (default 5 minutes) after which the receiver is then activated to listen for commands. The receiver only remains active for 200ms or until a message is received. | |||
Battery powered energenie devices, such as the eTRV or Thermostat do not constantly listen for commands. For example, the eTRV reports its temperature at the *SET_REPORT_PERIOD* (default 5 minutes) after which the receiver is then activated to listen for commands. The receiver only remains active for 200ms or until a message is received. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Change to REPORT_PERIOD (remove SET)
Hi @Achronite,
The valve action state (heating/idle) for each valve is designed to be independent of external factors, including other valves and the heat source/boiler. This approach aligns with how other MQTT radiator valve integrations work. The retained temperature set-point in MQTT is used as it is reliably set by the app.js code when the valve is commanded to a new target temperature. This ensures consistent state determination for each valve.
The "auto" mode is not suitable for the Energenie eTRVs because these valves do not have a stored schedule. According to Home Assistant’s climate documentation, "Auto: The device is set to a schedule, learned behavior, AI." I removed all options except "heat" to simplify functionality and avoid confusion. Including "off" can also be misleading, as it suggests "valve closed," but without command caching, this could cause issues. For example:
If I understand correctly, this means setting all valve states to heating whenever the boiler is on, regardless of whether individual valves are "calling for heat" (i.e., the set-point temperature is higher than the current room temperature). This is an interesting approach and could be useful to ensure coordination between the boiler and valves. However, it diverges from the idea of each valve independently reporting its own status. Allowing valves to reflect their individual heating or idle state independently might offer more granular control, while additional logic for boiler coordination could live in Home Assistant automations. |
@Achronite
|
Ok. |
Hello @Achronite This is now tested and ready to go 😊 |
Summary
Added improved monitoring and integration for eTRVs. Key features: valve state monitoring, dropdown for maintenance commands and boiler automation support.
Changes Introduced
Why This Matters
These changes improve usability by making eTRV states and maintenance actions accessible directly from Home Assistant.
Files Updated
Example MQTT climate discovery message
How it looks: